package com.xxx.ware.ware_manage_sys.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xxx.ware.ware_manage_sys.bean.dto.GoodsCateQueryDto;
import com.xxx.ware.ware_manage_sys.bean.dto.GoodsCateUpdateSaveDto;
import com.xxx.ware.ware_manage_sys.bean.dto.WebResultDto;
import com.xxx.ware.ware_manage_sys.bean.entity.goods_cate.WmsGoodsCategory;
import com.xxx.ware.ware_manage_sys.bean.vo.GoodsCateVo;

public interface IWmsGoodsCategoryService extends IService<WmsGoodsCategory> {

    /**
     * 获取物品种类列表
     * @param goodsCateQueryDto 入参
     * @return
     */
    WebResultDto<GoodsCateVo> getGoodsCateList(GoodsCateQueryDto goodsCateQueryDto);

    /**
     * 添加物品种类
     * @param goodsCateUpdateSaveDto 入参
     * @return
     */
    Boolean saveGoodsCate(GoodsCateUpdateSaveDto goodsCateUpdateSaveDto) throws Exception;

    /**
     * 更新物品种类
     * @param goodsCateUpdateSaveDto 入参
     * @return
     */
    Boolean updateGoodsCate(GoodsCateUpdateSaveDto goodsCateUpdateSaveDto);

    /**
     * 删除物品种类
     * @param id 自增id
     * @return
     */
    Boolean removeGoodsCate(Long id);

    /**
     * 通过唯一键获取物品种类名称
     * @param goodsCateName
     * @return
     */
    WmsGoodsCategory getGoodsCateBySoleKey(String goodsCateName);

}
